Common EDI Errors

This page contains an alphabetized list of common EDI Import History errors and Trigger History errors together with an explanation and suggestions on how to fix them.

[Item #] is not saleable. Please change order type to use this item

  • The part number included in the error message is either the Deacom Part Number (pr_codenum), or the part number that came in on the order file that the lookup was being performed on.  The saleable flag is not checked for this part, which can be set on either the Item Master record (Item Master > Properties > Saleable) or the Item Facility record (Item Master > Facilities > General > Saleable).

Cannot find column [#]

  • This is a Deacom internal error.  It does not indicate a problem with the file.  Check to see if this file is in the Failure folder and, if it is, move it to the Source folder for reprocessing.

Cannot find table 0

  • This is a Deacom internal error, which may present itself when the server’s hard drive has run out of space.  It does not indicate a problem with the file.  Contact IT to have them check the available space on the drive(s), clear some space if necessary, and then restart the Automation Service.  The Automation Service must be restarted as part of this process, otherwise Deacom will continue to fail the file with this error: “Invalid calculation in…”.  Once the above steps have been completed by IT, move the file from the Failure folder to the Source folder for reprocessing.

Column '[df_xxxx]' does not belong to underlying table 'cDXDFLT'

  • This is a Deacom internal error.  Column names can likely be any df_ field, though the most common include df_drawcmd and df_tgcrpass. This error does not indicate a problem with the file.  Check to see if this file is in the Failure folder and, if it is, move it to the Source folder for reprocessing.

Could not find file '[Source Path\Filename]'

  • Search for this same filename in the EDI Import History entries surrounding this error. There is a good chance this file was already processed.  It’s also likely that the other entry for this same file shows a legitimate error that needs to be addressed.

Failed to create any orders using the current field delimiter, line delimiter, and the new order condition of [New Order Cond.]

  • If this import map has worked previously, review the file contents against successful files to determine any anomalies.  Otherwise, review the “New Order Cond.”, “New Order When”, “Field Delimiter”, and “Line Delimiter” in the profile section of the import map.

Failed to set the bill-to and ship-to companies for this order.

  • This may be the result of an inactive Bill-To or Ship-To used as the "Create Same-As" in a "Lookup or Create" parsing rule.

File contains corrupted data

  • If this occurs with an Excel file that has a .xls file extension, try saving it as a .xlsx and set it to reprocess.  Otherwise, this truly could indicate a problem with the file.  Compare this file with others that processed successfully to determine if that is the case.

InvalidBillShipCombination BillToCompany = [ID#] ShipToCompany = [ID#]

  • The Ship-To record being returned from the Ship-To Lookup Expression does not belong to the Bill-To that was selected in an earlier parsing rule.  The IDs in the error message are the bi_id and sh_id, respectively.  If the IDs reported in the error message reflect the correct Bill-To and Ship-To, then ensure that the Ship-To is linked to the Bill-To (via Modify Bill-To > Ship-To Companies tab, or Modify Ship-To > Bill-To Companies tab).  Otherwise, determine which ID reported in the error message is incorrect, and modify that particular Bill-To or Ship-To record to correct the DBA value.

InvalidBillShipCombination BillToCompany = 0 ShipToCompany = 0

  • See You must select a bill-to and ship-to company.
  • If this is the result of attempting to update an existing Sales Order, it is likely that an Order Number (to_ordnum) was not established in an earlier parsing rule.

Invalid calculation in 'Order = Order' caused the transaction to be rolled back

  • This is typically the result of the Deacom session encountering an error and then repeating the error for any action taken afterwards as a result.  The solution is to restart the Automation Service.

Invalid or inactive part number: [Item #]

  • The item number reported here is either the Part Number (pr_codenum) or the Customer Part Number (cu_codenum).  Look up the part and verify the Active flag is set.

Length of the data to decrypt is invalid

  • This error refers to the FTP Password field and is seen when the EDI Import map was last edited/saved in the Legacy (Classic) version of Deacom.  The workaround is to launch the Web version of Deacom, modify the EDI Import map, overwrite the FTP Password, and save.

Line [#] cannot be parsed using the current Delimiters

  • Confirm the Field Delimiter and Line Delimiter in the profile section of the EDI Import map are valid for the file in question.  If these appear accurate, another probable cause is a double quote character (") immediately following a Line Delimiter in the file (for example, if the Line Delimiter is a tilde, then ~" will result in this error). The quote must be removed, either by the originator of the file or by manually removing/saving/reprocessing.
  • The Line # in the error refers to the actual “record” line in the file after the Line Delimiter has been applied (for example, if the Line Delimiter is a tilde, the text following the tilde becomes its own “record” line, and this process repeats for each tilde found).

No connection could be made because the target machine actively refused it [IP Address]:[Port Number]

  • SFTP Port is invalid.

No such file

  • FTP Server folder name and/or path is invalid.  Note that the folder name (and/or path) appears after the first slash (/).  Keep in mind that if the FTP login defaults to a specific subfolder (as can be seen using an FTP client like FileZilla), then Deacom will also default to that same subfolder without having to explicitly state the full path.

No such host is known

  • FTP Server host name is invalid, or the host cannot be reached for reasons such as server maintenance.  The host name appears before the first slash (/), if applicable.
  • This error may also result if the Automation Service (or Console) has lost its connection to the database.  If there is no FTP Server listed on the EDI Import or Trigger, then this is likely the cause. The resolution is to restart the Automation Service (or Console).

No suitable authentication method found to complete authentication (publickey,password)

  • FTP User Name or FTP Password is invalid, or the host has either disabled or deleted the account.

The bill to company is on credit hold

  • If these orders need to be loaded despite the credit hold, remove the credit hold from the Bill-To record, load the files, and then reapply the credit hold.

The facility and the invoicing facility cannot be the same

  • There must be either a Facility (sh_waid) or an Invoice Facility (sh_crosswaid) specified on the Ship-To > Order Defaults tab, and they cannot be the same.

The file is not in the correct format. Please correct this issue and try again

  • It is possible that blank lines were encountered within the file.  If this is the case, select the “Skip Blank Lines” checkbox in the profile section of the EDI Import map (if available), or remove the blank lines from the file.
  • It is also possible that field1 is empty, or becomes empty after Deacom applies the Field Delimiter.  Use the Sample File and View Sample to see how Deacom views the import file to see if this is the case.
  • This may also happen if the import file is an Excel spreadsheet, but the file extension is not .xlsx. In the case of spreadsheets only, Deacom refers to the file extension, not the map profile, to know to process the file as a spreadsheet. Keep this in mind during testing if you happen to set the Success and/or Failure folders the same as the Source, since Deacom changes (appends to) the file extension.

The following required fields have been left empty. These fields must be filled in to proceed: or_prid

  • The import file is missing an item.  If the import file is a flat file (e.g., XLSX, CSV, TXT), review the file for any missing part numbers.  If the import file is an XML file, review the file for an item tag that is expected to be there.  To determine which item tag is missing, look to the Ship-To User Field “EDI Item ID Lookup” first and, if that isn't set or is set to "None", look to the Bill-To User Field “EDI Item ID Lookup”. For example, if the Bill-To has an “EDI Item ID Lookup” of “UPC” selected, then every line item loop of the XML file must have a <ConsumerPackageCode> item tag.  See the table below for the corresponding XML tag name:

EDI Item ID Lookup

XML Tag Name

Deacom Table

Deacom Field Name

BPN

BuyerPartNumber

Customer Parts Table

cu_codenum

EAN

EAN

UPC Table

p4_codenum

GTIN

GTIN

UPC Table

p4_codenum

NDC

NatlDrugCode

UPC Table

p4_codenum

UPC

ConsumerPackageCode

UPC Table

p4_codenum

UPC-CustPart

ConsumerPackageCode

Customer Parts Table

cu_codenum

UPCCC

UPCCaseCode

UPC Table

p4_codenum

UPCCC-CustPart

UPCCaseCode

Customer Parts Table

cu_codenum

VPN

VendorPartNumber

Customer Parts Table

cu_codenum

VPN-PartNumber

VendorPartNumber

Item Master Table

pr_codenum

VPN-RetailCode

VendorPartNumber

Item Master Table

pr_retail

The process cannot access the file '[Source Path\Filename]' because it is being used by another process

  • It is important to know that, when this error is encountered, ALL files being processed at that time are (improperly) moved to the Success folder, yet only ONE of the files is reported in EDI Import History.  Because of this, all files with the same or similar timestamp should be reviewed and/or copied to the Source folder for reprocessing.  Essentially, if the filename doesn't appear in EDI Import History, it should be reprocessed (in addition to the file that reported this error).
  • It is thought that the culprit may be a secondary Automation Service (or Console) fighting for the files.

This document was already processed on [Date] at [Time] as [Success Path\Filename]

  • This same order file was already imported into Deacom.  Search for the existing occurrence via View EDI Import History, using the Date and Time from the error message.  This earlier Success entry will indicate the Deacom Order Number that was loaded.  Compare the order in Deacom to the order file that failed to determine whether this is truly a duplicate.  If it is determined that this order file needs to be loaded, this can be accomplished by highlighting the Success entry and clicking “Reset File”.  This will clear the hash (eh_hash) on the file and allow the same file to be imported.

This Bill-To PO number ([PO #]) already exists for this bill-to company

  • This same Bill-To PO is already loaded in Deacom.  Search for the existing occurrence via Sales > Order Reporting > Bill-To PO.  Order Type should be “All”, and Status should be “All Orders”.  Compare the order in Deacom to the order file that failed to determine whether this is truly a duplicate.

This Ship-To PO number ([PO #]) already exists for this ship-to company

  • This same Ship-To PO is already loaded in Deacom.  Search for the existing occurrence via Sales > Order Reporting > Ship-To PO.  Order Type should be “All”, and Status should be “All Orders”.  Compare the order in Deacom to the order file that failed to determine whether this is truly a duplicate.

Trigger failed to run: Cannot find column or_linenum.

  • This can happen if the trigger is using a LOTINFO or MASTERLOTINFO (MASTERLOTINFO3) lines loop, and at least one of the lines on the Sales Order has "Do Not Post Inventory" (or_noinv) selected. Deacom is unable to select data from the inventory tables (dtfifo/dtfifo2) for these lines since no inventory movements were made, resulting in this error.
  • This can happen if the trigger is using a LOTINFO or MASTERLOTINFO (MASTERLOTINFO3) lines loop, and all items on the Sales Order have an "Order Type" of "Kitted" (pr_ordtype = 'k'). Deacom is unable to select data from the inventory tables (dtfifo/dtfifo2) for these lines since no inventory movements were made, resulting in this error.

Trigger failed to run: Report Confirmation not found in System -> Printing defaults.

  • This can happen if the System Report "confirm" was renamed from "Confirmation" to something else. This is because Sales Order triggers call the same functionality as printing to gather all of the sales data which relies on the report named "Confirmation" to do that. Navigate to Print Outs > Maintenance > Report Layouts, modify the System Report (pt_report) named "confirm", and change the Name (pt_name) back to "Confirmation".

Trigger failed to run: The Deacom Automation server isn't running. Please have the system administrator start it and try again

  • As the error states, the Deacom Automation service, which is required for triggers to function, is not currently running.  Contact your System Administrator, provide this error, and request that the service be restarted.  Any triggers resulting in this error will need to be resent.

Trigger failed to run: Thread was being aborted

  • This can happen if there is a network interruption.  The System Administrator will see this logged by the Deacom Automation service: “DeacomLoggingExceptionAn established connection was aborted by the software in your host machine”.  Any triggers resulting in this error will need to be resent.

Unable to decrypt the passed string. Please re-run the Deacom update to ensure all encrypted strings are converted

  • This error refers to the FTP Password field.  In this case, it is recommended to modify the map, delete the password, save the map, and exit.  Then modify the same map, enter the password, save the map, and exit.  Be careful copying the password from applications such as Word or Excel that can include extra hidden characters.

Unable to connect to the remote server

  • SSH Protocol may be the culprit here.  Change the selection and try the connection again.  As a rule of thumb, SSH Protocol is required for SFTP connections.

Unable to place file '[Filename]' on the FTP server.  Reason: Permission denied (keyboard-interactive)

  • FTP Password is invalid.

Unable to send email for [Trigger Name] to [Destination]. Reason: Error in processing. The server response was: 5.7.3 STARTTLS is required to send mail

  • An invalid Email Host password may be the culprit here.  Retype the password in System > Options > Company > Trigger Password.  This should be the network domain password for the user specified in Trigger Username.

Unable to send email for [Trigger Name] to [Destination]. Reason: The parameter 'address' cannot be an empty string

  • A trailing semicolon may be the culprit here.  Check the Destination field on the Trigger and ensure there is no semicolon at the end of the final email address.

Unable to set or_cuid to null. Reason: Lookup failed in table dmcust

  • The lookup on this Customer Part failed to find a match.  Determine the Bill-To from the file and verify that the part number in the error reflects a valid and active Customer Part under that Bill-To in Deacom (Sales > Customers > Modify Bill-To > Customer Parts).  Ensure that the Part Number is active as well (Inventory > Item Master > Properties > Active).  Also ensure that the Ship-To (or Bill-To if not set on the Ship-To) User Field “EDI Item ID Lookup” is set correctly (refer to the error “Unable to set to_remarks to null” for further information).  If necessary, add the Customer Part under the appropriate Item for the Bill-To (Inventory > Item Master > View > Bill-Tos/Ship-Tos > Add).  In the rare case that your Customer Parts are maintained under the Ship-To, then perform the above at the Ship-To level.
  • To determine if this Customer Part is used elsewhere in the system, run the following query via System > Query Tool, replacing 'nnn' with the actual value and clicking View:

SELECT cu_codenum, cu_descrip, cu_active, pr_codenum, pr_active, pr_descrip, cu_biid, bi_name, cu_shid, sh_name FROM dmcust LEFT JOIN dmprod ON cu_prid = pr_id LEFT JOIN dmbill ON cu_biid = bi_id LEFT JOIN dmship ON cu_shid = sh_id WHERE cu_codenum = 'nnn'

Unable to set or_prid to null. Reason: Lookup failed in table dmprod. Expression: [pr_codenum = field2]

  • The lookup on this Part Number failed to find a match.  Verify that the part number in the error reflects a valid Part Number in Deacom (Inventory > Item Master > Part Number).  Ensure that the Part Number is active as well (Inventory > Item Master > Properties > Active).  Also ensure that the Ship-To (or Bill-To if not set on the Ship-To) User Field “EDI Item ID Lookup” is set correctly (refer to the error “Unable to set to_remarks to null” for further information).  If necessary, add the Part Number in Deacom, or edit the import file to modify or remove the problematic item.

Unable to set or_prid to null. Reason: Lookup failed in table dmprod. Expression: [pr_retail = field2]

  • The lookup on this Retail Code failed to find a match.  Verify that the part number in the error reflects a valid Retail Part Number in Deacom (Inventory > Item Master > General 1 > Retail Code). Ensure that the Part Number is active as well (Inventory > Item Master > Properties > Active). Also ensure that the Ship-To (or Bill-To if not set on the Ship-To) User Field “EDI Item ID Lookup” is set correctly (refer to the error “Unable to set to_remarks to null” for further information).  If necessary, add the Retail Code under an existing Part Number in Deacom, or edit the import file to modify or remove the problematic item.

Unable to set or_prid to null. Reason: Lookup failed in table dmprod4

  • The lookup on this UPC Number failed to find a match, or more than one match was found.  Verify that the part number in the error reflects a valid UPC Number under that Part Number in Deacom (Inventory > Item Master > UPC Numbers).  Ensure that the Part Number is active as well (Inventory > Item Master > Properties > Active).  Also ensure that the Ship-To (or Bill-To if not set on the Ship-To) User Field “EDI Item ID Lookup” is set correctly (refer to the error “Unable to set to_remarks to null” for further information).  If necessary, add the UPC Number under the appropriate Item.
  • To determine if this UPC Number is used elsewhere in the system, run the following query via System > Query Tool, replacing 'nnn' with the actual value and clicking View:

SELECT p4_codenum, p4_descrip, pr_codenum, pr_active, pr_descrip FROM dmprod4 LEFT JOIN dmprod ON p4_prid = pr_id WHERE p4_codenum = 'nnn'

Unable to set or_shid to null. Reason: Object reference not set to an instance of an object

  • This is likely the result of a Lookup or Create parsing rule containing an invalid or empty “Create Same-As” Ship-To.  Check the parsing rule to ensure a valid “Create Same-As” Ship-To is selected.

Unable to set to_confirm/to_remarks to null. Reason: Lookup failed in table dmd3

  • The Bill-To or Ship-To User Field “EDI Item ID Lookup” is not set.  Determine the Bill-To or Ship-To from the file and select the appropriate value from the dropdown, either by mimicking another Bill-To (or another Ship-To under the same Bill-To) or referring to the error “You must have at least one line to enter an order” in this section.  Note that only the Bill-To needs to be set for this lookup to work.  Setting the Ship-To will override the Bill-To.
  • In version 4A of the EDI Import maps, field to_remarks has been replaced with field to_confirm as the "holding field" for this data.

Unable to set to_biid to null. Reason: Lookup failed in table dmbill

  • The lookup on this Bill-To Company failed to find a match, or more than one match was found.  Verify that the Bill-To in the file reflects a valid and active Bill-To in Deacom (based on physical address).  The Address Location Number from the file (or from the error itself) must exist in the DBA field on the Bill-To.  Ensure duplicate DBA values do not exist, as this will also result in the above error.
  • This could also be the result of a Lookup or Create parsing rule containing an invalid or empty “Create Same-As” Bill-To.  Check the parsing rule to ensure a valid “Create Same-As” Bill-To is selected.

Unable to set to_shid to null. Reason: Lookup failed in table dmship

  • The lookup on this Ship-To Company failed to find a match, or more than one match was found.  Verify that the Ship-To in the file reflects a valid and active Ship-To in Deacom (based on physical address).  The Address Location Number from the file (or from the error itself) must exist in the DBA field on the Ship-To.  Ensure duplicate DBA values do not exist, as this will also result in the above error.
  • This could also be the result of a Lookup or Create parsing rule containing an invalid or empty “Create Same-As” Ship-To.  Check the parsing rule to ensure a valid “Create Same-As” Ship-To is selected.
    • Note that in versions 16.06.048+, this error should not result from an empty "Create Same-As", since leaving this field blank field forces the Ship-To to inherit its values from the Bill-To.

You must have at least one line to enter an order

  • The lookup on every part number within the file failed to find a match.  Verify that the Bill-To (or Ship-To) User Field “EDI Item ID Lookup” correctly reflects the item in the file that should find a match.  The “EDI Item ID Lookup” values and their XML counterparts are in a table that follows.
  • Note that another potential cause could be that the ordered quantity is being set to zero. Lines with a zero ordered quantity are not added to the order. This mirrors the behavior in the main app.

EDI Item ID Lookup

XML Tag Name

BPN

BuyerPartNumber

EAN

EAN

GTIN

GTIN

NDC

NatlDrugCode

UPC

ConsumerPackageCode

UPC-CustPart

ConsumerPackageCode

UPCCC

UPCCaseCode

UPCCC-CustPart

UPCCaseCode

VPN

VendorPartNumber

VPN-PartNumber

VendorPartNumber

VPN-RetailCode

VendorPartNumber

You must select a bill-to and ship-to company

  • The map instruction which performs the lookup on Ship-To Company (and optionally Bill-To Company) was never executed based on the Conditions for that instruction.  For example, this error would result if the Ship-To lookup instruction executes only when the Address Type Code is 'ST', but the file only contains 'BY'.
  • Another potential cause could be that the Bill-To Company, that is set as the ‘default’ on the Ship-To record, is inactive.  Either set a new default Bill-To on the Ship-To record or reactivate the Bill-To record.
  • This error may also result from the lack of a Skip Line Condition when the import file contains records that should be ignored.  Note that the Skip Line Condition should actually read "Include Line Condition", so be sure to add a rule that tells Deacom which records to include (e.g., !EMPTY(field9) or ISDIGIT(field1)).

You must specify a facility

  • A facility is required for the Sales Order to be created, but one was not found. Deacom will look to the following to apply a facility:
    • A specific rule in the EDI Import map to set to_waid.
    • The facility on the Ship-To > Order Defaults page (sh_waid).
    • In versions 17.01.005+, Deacom will use the facility from the Bill-To > Ship-To Defaults page (bi_waid) if there is no facility on the Ship-To > Order Defaults page.
    • The facility flagged as the default in Inventory > Maintenance > Facilities.